#include <iostream>
#include<string>
using namespace std;
//class Solution {
//public:
//    bool Is_NUmber(char ch)
//    {
//        if(ch>='1'&&ch<='9')
//            return true;
//
//
//           return false;
//    }
//    int StrToInt(string str)
//    {
//        long long value=0;
//        int began=0;
//        int end=str.size()-1;
//        int pos=1;
//        if(str[began]=='-')
//        {
//            pos=-1;
//            began++;
//        }
//        while(end>=began)
//        {
//            if(Is_NUmber(str[began]))
//            {
//                value*=10;
//                value+=(str[began]-'0');
//
//            }
//            began++;
//        }
//          return value*pos;
//
//    }
//};

class Solution {
public:
    string reverseStr(string s, int k)
    {
        if(k==1)
            return  s;
        int end1=k;
        int size=s.size();
        int head,tail;
       while(end1<s.size())
       {

          head=end1-k,tail=end1-1;
           while(head<tail)
           {
               swap(s[head++],s[tail--]);

           }

           size-=end1;
           end1+=2*k;

       }
       if(size>=k)
       {
           head=size;
           tail=s.size()-1;
           while(head<tail)
           {
               swap(s[head++],s[tail--]);
           }
       }
       return s;
    }
};
int main()
{
    Solution d1;
    int k=2;

    cout<<d1.reverseStr(string("abcdefg"),k)<<endl;    return 0;

}


